/*
 * Copyright (c) 2025 Industrial Software Feature Database
 */
package com.comac.ins.isfd.service;

import cn.hutool.http.server.HttpServerRequest;
import com.comac.ins.isfd.domain.bo.*;
import com.comac.ins.isfd.domain.bo.query.IsfdServerDataQueryBo;
import com.comac.ins.isfd.domain.bo.query.IsfdServerManagementQueryBo;
import com.comac.ins.isfd.domain.vo.*;
import jakarta.servlet.http.HttpServletRequest;

import java.util.List;

public interface IsfdServerManagementService {
    Boolean add(HttpServletRequest request, IsfdServerManagementAddBo isfdServerManagementAddBo);
    Boolean delete(Long id);
    Boolean update(IsfdServerManagementAddBo isfdServerManagementAddBo);

    List<IsfdServerManagementVo> query(IsfdServerManagementQueryBo isfdServerManagementQueryBo);

    Long getTotal(IsfdServerManagementQueryBo isfdServerManagementQueryBo);

    IsfdServerDataImportVo serverDataImport(IsfdServerDataImportBo isfdServerDataImportBo);

    IsfdServerDataExportVo serverDataExport(IsfdServerDataExportBo isfdServerDataExportBo);

    IsfdServerServiceHistroryListVo queryServerHistory(IsfdServerServiceHistroryBo isfdServerServiceHistroryBo);

    IsfdServerServiceHistroryDataVo queryServerHistoryData(IsfdServerServiceHistroryBo isfdServerServiceHistroryBo);

    Boolean publish(Long id);

    Boolean revoke(Long id);

    List queryServerHistoryDataAll(IsfdServerDataQueryBo isfdServerDataQueryBo);

    Integer getServiceTimesByModelId(Long modelId);
}
